﻿/**
 *
 * @file ListDialogChoose.h
 * @brief  List对话框声明
 * @author wangning (2185896382@qq.com)
 * @date 2024-12-20
 *
 */
#ifndef __GUIListDialogChoose_H__
#define __GUIListDialogChoose_H__

#include "GUIPhyscisDialogAPI.h"
#include "FITK_Kernel/FITKCore/FITKAbstractGUIDialog.h"

namespace Ui
{
    class ListDialogChoose;
}
namespace GUI
{
    class WidgetBrowserTable;

    /**
     * @brief  List对话框声明
     * @author wangning (2185896382@qq.com)
     * @date 2024-12-20
     */
    class GUIPhyscisDialogAPI ListDialogChoose : public Core::FITKDialog
    {
        Q_OBJECT
    public:
        explicit ListDialogChoose(const QString &actionName, QWidget* parent = nullptr);
        virtual ~ListDialogChoose();

    private slots:
        /**
         * @brief   组合框文本变化事件处理函数
         * @param[i]   arg 当前选择的文本
         * @author wangning (2185896382@qq.com)
         * @date 2024-12-20
         */
        void on_comboBox_currentTextChanged(const QString &arg);

    private:
        /**
         * @brief 初始化窗口
         * @author LiBaojun (libaojunqd@foxmail.com)
         * @date 2024-12-06
         */
        void init(const QString &actionName);

    private:
        /**
         * @brief UI对象
         * @author LiBaojun (libaojunqd@foxmail.com)
         * @date 2024-12-06
         */
        Ui::ListDialogChoose *_ui{};

        /**
        * @brief 表格对象
        * @author LiBaojun (libaojunqd@foxmail.com)
        * @date 2024-12-05
        */
        WidgetBrowserTable* _tableWidget{};
    };
}
#endif